package com.indexingsystem.system.service;

import com.indexingsystem.boss.Vo.IdxSynonymDetailReqVo;
import com.indexingsystem.boss.Vo.IdxSynonymDetailsListVo;
import com.indexingsystem.boss.common.PagedResult;
import com.indexingsystem.boss.entity.IdxSynonymDetails;

import java.util.List;

public interface IdxSynonymDetailsService {

	/**
	 * 根据同义词明细主键删除列表
	 * 
	 * @param id
	 * @return
	 */
	int deleteByPrimaryKey(String id);

	/**
	 * 新增同义词明细
	 * 
	 * @param record
	 * @return
	 */
	int insert(IdxSynonymDetails record);

	/**
	 * 条件新增同义词明细
	 * 
	 * @param record
	 * @return
	 */
	int insertSelective(IdxSynonymDetails record);

	/**
	 * 更加同义词明细查询类表
	 * 
	 * @param id
	 * @return
	 */
	IdxSynonymDetails selectByPrimaryKey(String id);

	/**
	 * 条件修改同义词明细
	 * 
	 * @param record
	 * @return
	 */
	int updateByPrimaryKeySelective(IdxSynonymDetails record);

	/**
	 * 修改同义词明细
	 * 
	 * @param record
	 * @return
	 */
	int updateByPrimaryKey(IdxSynonymDetails record);
	
	/**
	 * 分页查询同义词明细列表
	 * @param idxSynonymDetailReqVo
	 * @return
	 */
	PagedResult<IdxSynonymDetails> selectIdxSynonymDateisl(IdxSynonymDetailReqVo idxSynonymDetailReqVo);
	
	/**
	 * 分页查询同义词明细列表数量
	 * @param idxSynonymDetailReqVo
	 * @return
	 */
	Integer selectIdxSynonymDateislCount(IdxSynonymDetailReqVo idxSynonymDetailReqVo);
	
	/**
	 * 批量删除同义词明细表
	 * @param id
	 * @return
	 */
	Integer deleteByIdBatch(List<String> id);

	/**
	 * 根据id查询明细表
	 * @param id
	 * @return
	 */
	List<IdxSynonymDetailsListVo> selectIdxSynonymDateislById(String id);
}